The present invention relates to a moving quantity detection apparatus and a method for correctly detecting a moving quantity of a block between a plurality of time sequential images.
In the background art, a CCD image (charge coupled device) camera inputs an outdoor image to a computer. Data transmission from the camera to the computer is executed at a speed such as 30 frames per second according to the NTSC standard. Therefore, even if the ability of the computer increases, the input speed of the images does not increase and realization of control of high speed equipment according to the image information is difficult.
On the other hand, a new type of sensor using a sensitive variable element is disclosed in Japanese Patent disclosure PH6-139361. This element speeds-up the image processing circuit. A result of simple image processing is outputted as a rate of 100 frames per second. However, this image processing circuit is an analog version and processable calculation is relatively simple. For example, in an interactive game of gesture input type, a movement of the object is detected by using an artificial retina chip of (32xc3x9732) pixels. This movement information is insufficient for complex image processing with respect to precision and the number of frames per second.
Recently, a smart vision-sensor has been developed. In this sensor, the image is processed by using a digital circuit and simple image processing such as labelling of the area and calculation of the center of gravity is rapidly executed. However, the emphasis of this sensor is its parallel processing ability by unit of line. Therefore, it is difficult to precisely extract the moving vector of an area in two-dimensional space. In following explanation, the moving vector is called a xe2x80x9cmoving quantityxe2x80x9d.
Furthermore, recently, a super parallel-fast visual information processing system was developed. In this system, the sensor includes a digital processing circuit, and it is possible to pursue the area in a two-dimensional image at a speed of 1000 frames per second. However, this system is designed to execute all image processings using only neighboring calculations. Therefore, if the complexity and moving speed of the object increases, a calculation result of sufficient precision is not obtained.
In the near future, the sensor to which the above-mentioned digital processing circuit is loaded will be more developed. As a result, the image processing result for a image or a gray image will be outputted at a speed of 1000 frames per second. Accordingly, a method to rapidly and correctly detect the moving quantity of an area from a plurality of time series images that is loadable to the sensor to rapidly input and process the plurality of time series images is desired.
It is an object of the present invention to provide a moving quantity detection apparatus and a method to precisely detect the moving quantity of each area from a plurality of images in case the sensor inputs the plurality of images in a time series.
According to the present invention, there is provided a moving quantity detection apparatus, comprising: an image input means for inputting a plurality of images in a time series at a predetermined interval; a full size image processing means for dividing one image into a plurality of blocks with a predetermined size, and for calculating each evaluation value between a particular block on the one image and each neighboring block corresponding to the particular block on a time serial image; a reduced image processing means for reducing the plurality of images by a predetermined reduction ratio, for dividing one reduced image corresponding to the one image into a plurality of blocks as the predetermined size, and for calculating each evaluation value between a particular block on the one reduced image and each neighboring block corresponding to the particular block on the other reduced image corresponding to a multiple of the predetermined interval for the predetermined reduction ratio; and a moving quantity detection means for evaluating the correspondence value by unit of each neighboring block for the time sequential image and the other reduced image, for selecting the neighboring block whose evaluation value is highest of all neighboring blocks, and for calculating a relative distance between the particular block on the one image and the one neighboring block on the time serial image as a moving quantity.
Further in accordance with the present invention, there is also provided a moving quantity detection method, comprising the steps of: inputting a plurality of images in a time series at a predetermined interval; dividing one image into a plurality of blocks with a predetermined size; calculating each evaluation value between a particular block on the one image and each neighboring block corresponding to the particular block on the time serial image; reducing the plurality of images by a predetermined reduction ratio; dividing one reduced image corresponding to the one image into a plurality of blocks as the predetermined size; calculating each evaluation value between a particular block on the one reduced image and each neighboring block corresponding to the particular block on other reduced image corresponding to a multiple of the predetermined interval for the predetermined reduction ratio; evaluating the correspondence value by unit of the each neighboring block for the time sequential image and the other reduced image; selecting one neighboring block whose evaluation value is highest from the each neighboring block; and calculating a relative distance between the particular block on the one image and the one neighboring block on the time serial image as a moving quantity.
Further in accordance with the present invention, there is also provided a computer readable memory containing computer readable instructions, comprising: input of a plurality of images in a time series at a predetermined interval; instruction means for causing a computer to divide one image into a plurality of blocks with a predetermined size; instruction means for causing a computer to calculate each evaluation value between a particular block on the one image and each neighboring block corresponding to the particular block on the time serial image; instruction means for causing a computer to reduce the plurality of images by a predetermined reduction ratio; instruction means for causing a computer to divide one reduced image corresponding to the one image into a plurality of blocks as the predetermined size; instruction means for causing a computer to calculate each evaluation value between a particular block on the one reduced image and each neighboring block corresponding to the particular block on the other reduced image corresponding to a multiple of the predetermined interval for the predetermined reduction ratio; instruction means for causing a computer to evaluate the correspondence value by unit of the each neighboring block for the time sequential image and the other reduced image; instruction means for causing a computer to select one neighboring block whose evaluation value is highest of all the neighboring blocks; and instruction means for causing a computer to calculate a relative distance between the particular block on the one image and the one neighboring block on the time serial image as a moving quantity.